import axios from 'axios';
 
const BASE_URL = 'http://localhost:11434'; // 确保这是你的ollama服务器地址和端口
 
export const generateText = async (prompt) => {
  const response = await axios.post(`${BASE_URL}/api/chat`, {
    prompt,
    stream: true, // 开启流式传输
    _type: "generateStream" // 根据ollama的API调整这个字段
  }, {
    responseType: 'text', // 或者'stream'，取决于你的需求和axios版本
    headers: {
      'Content-Type': 'application/json'
    }
  });
 
  // 处理流式数据
  const reader = response.data.getReader();
  const decoder = new TextDecoder('utf-8');
  let done = false;
  let text = '';
 
  while (!done) {
    const { value, done: doneReading } = await reader.read();
    done = doneReading;
    const chunkValue = decoder.decode(value);
    text += chunkValue;
    // 这里你可以更新Vue组件的状态来显示文本，例如使用 Vuex 或直接在组件中处理
    console.log(text); // 或者在其他地方使用 text 更新UI
  }
};